![[アップデート] AWS Elemental MediaConnect と AWS Elemental MediaLive で入力ソースに対するフェイルオーバー設定が可能となりました!](https://devio2023-media.developers.io/wp-content/uploads/2019/05/aws-elemental-mediaconnect.png)
[アップデート] AWS Elemental MediaConnect と AWS Elemental MediaLive で入力ソースに対するフェイルオーバー設定が可能となりました!
こんにちは、大前です。
AWS Elemental MediaConnect と AWS Elemental MediaLive について、掲題のアップデートがありましたのでお知らせします。
AWS Elemental MediaConnect and MediaLive add input failover features
最近は MediaServices に関するアップデートが多いですね!
簡単まとめ
- AWS Elemental MediaConnect のフローに対する入力にフェイルオーバー設定機能が追加されたよ
- AWS Elemental MediaLive のチャンネルの入力にフェイルオーバー設定機能が追加されたよ
- MediaServices を使用したライブ配信アーキテクチャの可用性をより高める事が出来るよ
どんなアップデート?
AWS Elemental MediaConnect と AWS Elemental MediaLive の入力に対して、フェイルオーバー機能が追加されました。
「入力に対するフェイルオーバー機能」をイメージするために、図示してみました。
ライブ配信ソースから、MediaConnect もしくは MediaLive に映像を取り込むフローをそれぞれイメージします。
MediaConnect 自体は複数 AZ に設定が可能です。
MediaLive に関しても AWS 側で複数 AZ に跨る構成(マルチパイプライン)が既存の機能として存在します。(ちょっと図が雑ですが)
一方で、MediaConnect や MediaLive に入力される配信ソースがダウンしてしまう可能性も考えられます。
いくら AWS 側で可用性を担保していても、配信ソースがダウンしてしまってはどうしようもないですよね。
今回のアップデートにより、各サービスにおいてフェイルオーバーを目的とした同一の配信ソースが 2つ設定可能となりました!
これにより、配信ソース側の可用性を高めることが可能となります。
では、各サービスごとに具体的な設定方法などを確認していきたいと思います。
AWS Elemental MediaConnect の入力フェイルオーバー
MediaConnect は、今まで各フロー(MediaCoonnectの設定単位)に対して 1つの入力しか設定出来ませんでした。
今回のアップデートにより「Source failover configuration」という設定項目が追加され、この機能を有効にする事で 2つの入力を設定出来るようになりました。
MediaConnect にてフェイルオーバーを有効にした際の挙動は、以下になるそうです。
ソースが SMPTE 2022-7 に準拠している場合
SMPTE 2022-7 というのは、欠落したパケットを同一の冗長ストリームで置き換える方法を定義した規格だそうです。
SMPTE 2022-7 is a standard developed by the Society of Motion Picture and Television Engineers (SMPTE) group. The SMPTE 2022-7 standard defines a method that replaces missing packets with packets in an identical, redundant stream. This type of failover requires a small latency buffer in your workflow to allow time for MediaConnect to recover packets from the two streams.
MediaConnect に入力されるソースがこれに準拠している場合、常に両方のソースを使用するそうです。
SMPTE 2022-7 の特徴からも、なんとなくイメージはつきますね。
ソースが SMPTE 2022-7 に準拠していない場合
一方で、SMPTE 2022-7 に準拠していないソースである場合、MediaConnect 側で使用するソースをランダムに選択するそうです。
ユーザ側で使用するソースは指定出来ないという事ですね。
また、サービス側で必要に応じて使用するソースを切り替えるとの事です。(Hot/Hotと呼ぶらしいです)
The service continues switching back and forth between sources as needed.
料金について
フェイルオーバー機能を使用した場合の料金については、明確な記載は見つかりませんでした。
AWS Elemental MediaConnect Pricing
インターネットから MediaConnect へのデータ転送料は無料である為、実質タダで使えると言うことであればお得ですね。
All data transfer in $0.00 per GB
実際はソース側のリソースが増えるので、そちらのコストが増えるとは思います。
AWS Elemental MediaLive の入力フェイルオーバー
AWS Elemental MediaLive のチャンネルには元々複数の入力を設定出来ましたが、あくまで同一チャンネル内でソースを切り替える為の設定でした。
Input Switching in AWS Elemental MediaLive
今回のアップデートにより、ある 1ソースに対するフェイルオーバー設定も可能となりました。
設定画面では、入力の設定項目に「Automatic input failover settings」が追加されています。
この機能を有効にしてセカンダリとして使用する入力を指定すると、「Primary」「Secondary」といった表示がされました。
直感的でわかりやすいですね。
MediaLive は MediaConnect とは異なり、Primary のソースが使用され、Primary のソースが使用不可になると Secondary が使用される挙動となります。
また、フェイルオーバー後に Primary ソースが復活した場合に、 Secondary を使い続けるのか、Primary に戻すのかを設定出来ます。
After a failover, you can select whether to return to the primary source when it is in a healthy state again or continue using the secondary source for the input.
また、フェイルオーバー機能の適用対象には制限があるそうなので、気をつけましょう。
- ライブプッシュソースのみ対応(MP4といった静的ソースは非対応)
- MediaConnect
- UDP/RTP トランスポートストリーム
- RTMP PUSH
- 複数の入力が存在する場合
- ライブコンテンツソースが 1つだけである事
- 複数のライブコンテンツソースが存在する場合はフェイルオーバー設定は出来ない
- ライブソース * 1 + 静的ソース などであればおk
料金について
MediaLive についても、フェイルオーバー機能を使用した際の追加料金に関する記載は見当たりませんでした。
AWS Elemental MediaLive Pricing
ただし、MediaLive は入力に関するデータ転送料がかかりますので、作成・アタッチする入力が増える分、単純計算で 2倍の費用がかかることになりそうです。
おわりに
AWS Elemental MediaConnect と AWS Elemental MediaLive にて、入力に対するフェイルオーバー機能が追加されました!
これにより、AWS MediaServices を使用したライブ配信ワークロードの可用性をより高めることが出来そうです。
以上、AWS 事業本部の大前でした。